CREATE OR REPLACE PROCEDURE small_pgm
IS
  a NUMBER;
  b NUMBER;

  PROCEDURE touch(x IN OUT NUMBER, y NUMBER) 
  IS
  BEGIN
    IF y > 0 THEN
      x := x*x;
    END IF;
  END;

BEGIN
  a := b;
  FOR I IN 1..10 LOOP
    touch(a, -17);
    a := a*b;
  END LOOP;
END small_pgm;
